aarch32: Allow compiling with soft-float toolchain
authorManish Pandey <[email protected]>
Mon, 1 Apr 2019 14:27:18 +0000 (15:27 +0100)
committerManish Pandey <[email protected]>
Fri, 5 Apr 2019 10:37:19 +0000 (11:37 +0100)
commitfbd8f6c8414a49883cbdc32277a0f31fdd3d733d
tree2082cad7dcd0478e84157753941a04ac8068ab04
parent8a08e27232d0c1b906fd2f3e4b3b7a90661a50b9
aarch32: Allow compiling with soft-float toolchain

ARMv7 and Cortex-A32(ARMv8/aarch32) uses "arm-linux-gnueabi" toolchain which
has both soft-float and hard-float variants and so there could be scenarios
where soft-float toolchain is used.Even though TF-A documentation recommends
to use hard-float toolchain for aarch32 but there are external projects where
we cannot mandate the selection of toolchain and for those projects at least
the build should not fail.

Current TF-A source fails to build with soft-float toolchain because assembler
does not recognizes "vmsr" instruction which is required to enable floating
point unit.

To avoid this piece of code being compiled with soft-float toolchain add
predefined macro guard " __SOFTFP__" exposed by soft-float toolchain.

Change-Id: I76ba40906a8d622dcd476dd36ab4d277a925996c
Signed-off-by: Manish Pandey <[email protected]>
include/arch/aarch32/el3_common_macros.S